package it.giuseppetrisciuoglio.lyrics.processor;

import it.giuseppetrisciuoglio.lyrics.adapter.ArtistaCanzone;
import it.giuseppetrisciuoglio.lyrics.persistence.entity.Canzone;

import java.util.ArrayList;
import java.util.List;

import org.apache.camel.Exchange;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;

@Service
public class SplitAllSongProcessor {
	
	private final transient Logger log = LoggerFactory.getLogger(getClass());

	public List<ArtistaCanzone> split(Exchange exchange){
		log.debug("split() exchange={}", exchange);
		List<Canzone> canzoni = (List<Canzone>) exchange.getIn().getBody();
		List<ArtistaCanzone> artistaCanzones = new ArrayList<ArtistaCanzone>();
		for (Canzone canzone : canzoni) {
			ArtistaCanzone artistaCanzone = new ArtistaCanzone();
			artistaCanzone.setArtistaId(canzone.getArtista().getId());
			artistaCanzone.setCanzoneId(canzone.getId());
			artistaCanzone.setNomeArtista(canzone.getArtista().getNome());
			artistaCanzone.setTitoloCanzone(canzone.getTitolo());
			artistaCanzones.add(artistaCanzone);
		}
		log.debug("split() canzoni splittate ", artistaCanzones != null ? artistaCanzones.size() : 0);
		return artistaCanzones;
	}
	
}
